$(function() {
    function renderAfterAuth(){
        $.get(
            'server.php?action=auth&model=User',
            function(response){
                var responseJson = $.parseJSON(response);
                switch (responseJson.rights){
                    case 'anon':
                        $('#liMenuEditor').hide();
                        $('#divProfileAuth').hide();
                        $('#formProfile').show();
                        break;
                    case 'client':
                        $('#liMenuEditor').show();
                        $('#formProfile').hide();
                        $('#divProfileAuth').show();
                        $('#tdProfileId').text(responseJson.id);
                        $('#tdProfileEmail').text(responseJson.email);
                        $('#tdProfileRights').text(responseJson.rights);
                        break;
                }
            }
        );
    }
    function renderNotes(){
        $.get(
            'server.php?action=select&model=Note',
            function(response){
                $('#tbodyNotes').empty();
                var responseJson = $.parseJSON(response);
                $.each(responseJson, function(index, value){
                    $('#tbodyNotes').append('\
                        <tr>\
                            <td>' + value.id + '</td>\
                            <td>' + value.userId + '</td>\
                            <td>' + value.text + '</td>\
                        </tr>\
                    ');
                });
            }
        );
    }
    function renderStart(){
        $('#divContent > div').hide();
        renderNotes();
    }
    renderStart();
    renderAfterAuth();
    $('#ulMenu a').click(function(){
        $('#divContent > div').hide();
        var name = '#div' + $(this).attr('data-href');
        $(name).show();
        $('#ulMenu li').removeClass('active');
        $(this).parent().addClass('active');
        return false;
    });
    $('#btnSignUp').click(function(){
        $.post(
            'server.php?action=insert&model=User',
            $('#formProfile').serialize(),
            function(data){
                $('#divAlert').show();
                $('#divInfo').empty();
                $('#divInfo').html(data);
                renderAfterAuth();
            }
        );
        return false;
    });
    $('#btnLogIn').click(function(){
        $.post(
            'server.php?action=logIn&model=User',
            $('#formProfile').serialize(),
            function(data){
                $('#divAlert').show();
                $('#divInfo').empty();
                $('#divInfo').html(data);
                renderAfterAuth();
            }
        );
        return false;
    });
    $('#btnAddNote').click(function(){
        $.post(
            'server.php?action=insert&model=Note',
            $('#formEditor').serialize(),
            function(data){
                $('#divAlert').show();
                $('#divInfo').empty();
                $('#divInfo').html(data);
                renderNotes();
            }
        );
        return false;
    });
    $('#btnLogOut').click(function(){
        $.post(
            'server.php?action=logOut&model=User',
            function(data){
                $('#divAlert').show();
                $('#divInfo').empty();
                $('#divInfo').html(data);
                renderAfterAuth();
            }
        );
        return false;
    });
});